package com.cxso.example.request.wlpt;

import com.cxso.example.domain.wlpt.file.FileDomain;
import com.cxso.example.enums.wlpt.ContractSignUserTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;


@Setter
@Getter
@Schema(description = "创建合同")
public class ApiConsignorContractCreateReq extends ApiBaseReq {

    @Schema(description = "合同乙方ID：（签约主体 bodyId）")
    @NotBlank(message = "甲方签署人身份证姓名不能为空")
    private String partyBId;

    @Schema(description = "甲方签署人类型  10 法人签署 20 委托人")
    @NotNull(message = "甲方签署人身份证姓名不能为空")
    private ContractSignUserTypeEnum partyAUserType;

    @Schema(description = "甲方法人身份证头像面图片 甲方法人身份签署时不可为空")
    private String partyAIdCardFrontImg;

    @Schema(description = "甲方法人身份证国徽面图片 甲方法人身份签署时不可为空")
    private String partyAIdCardBackImg;

    @Schema(description = "甲方委托书文件 甲方签署人类型为委托人时不可为空")
    private List<FileDomain> partyATrustInstrumentFiles;

    @Schema(description = "甲方签署人身份证姓名")
    @NotBlank(message = "甲方签署人身份证姓名不能为空")
    private String partyAIdCardName;

    @Schema(description = "甲方签署人身份证号码")
    @NotBlank(message = "甲方签署人身份证号码不能为空")
    private String partyAIdCardNo;

    @Schema(description = "甲方印章图片")
    @NotBlank(message = "甲方印章图片不能为空")
    private String partyASignImg;

}
